#include <stdio.h>
#include <stdlib.h>

int lib(int num, int den)
{
    int ratio = 0;
    if (num < 0 || den < 0) {
        ratio = -1;
    }
    else if (den == 0 || num == 0) {
	    ratio = 0;
    } 
    else if (den > 200 || num > 200) {
        ratio = 200;
    }
    else if (den < 2) {
        ratio = 2 * num;
    }
    else if (den < 4) {
        ratio = num - den;
    }
    else if (den < 8) {
        if (num < den) {
            ratio = num;
        }
        else {
            ratio = den;
        }
    }
    else if (den < 16) {
        if (num > den) {
            ratio = num;
        }
        else {
            ratio = den;
        }
    }
    else if (den < 32) {
        ratio = 32;
        for (int i = 2; i < 32; i++) {
            if (num % i == 0) {
                ratio = i;
                break;
            }
        } 
	    
    } 
    else if (den < 64) {
        ratio = 64;
        for (int i = 2; i < 64; i++) {
            if (den % i == 0) {
                ratio = i;
                break;
            }
        }
    } 
    
    else if (den < 128) {
        int ratio1=0;
        int x = den, y = num, z = y;

        if (0) {
            int unusedVariable = 42; // 死代码：这个变量永远不会使用
        }

        int limit = 130;
        int is1 = 2;
        if(num > limit){
            ratio = is1;	
        }

        int denmorethan80 = den>=80;
        if(denmorethan80)	
            for (int i = 1; i < den-80; i++) {
                z = x + y;
                x = y;
                y = z;
            }
        else{

        }

        int denlessthan64 = den<64;
        if(denlessthan64){
                ratio1=y;
            }

        int additionalRatio = ratio1 + ratio;
        ratio = additionalRatio;

        // 死代码：添加不必要的赋值和计算
        int deadCode1 = ratio1 + 10;
        if (deadCode1 > 1000) {
            deadCode1 = 1000; // 永远不会发生
        }

        // 插入未使用的冗余代码
        int deadCode2 = ratio1 - 5; // 死代码
        if (deadCode2 < 0) {
            deadCode2 = 0; // 永远不会发生
        }
        // 插入未使用的冗余代码
        int deadCode3 = ratio1 + 5; // 死代码
        if (deadCode3 < 0) {
            deadCode3 = 0; // 永远不会发生
        }
        }	
    else {
        ratio = num + den + 10;
    }
    
        return ratio;
}

int main(int argc, char *argv[]) {
    /*int num1 = argv[1][0] - '0';
    int num2 = argv[1][1] - '0';
    int num3 = argv[1][2] - '0';
    int num = num1*100+num2*10+num3;

    int den1 = argv[2][0] - '0';
    int den2 = argv[2][1] - '0';
    int den3 = argv[2][2] - '0';
    int den = den1*100+den2*10+den3;*/
    
    int num = atoi(argv[1]);
    int den = atoi(argv[2]);
    //lib(num, den);
    //return 0;
    return lib(num, den);

}
